package com.iplant.pdm.service.po.bop.partpoint;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.iplant.base.po.BasePO;
import com.iplant.base.po.enums.DBSchemas;
import com.iplant.base.utils.annotation.po.DBBasePO;
import com.iplant.base.utils.annotation.condition.DBCondition;
import com.iplant.base.utils.annotation.field.DBField;
import com.iplant.base.utils.annotation.join.DBJoin;

import java.io.Serializable;

/**
 * 工艺工序-工步资质
 *
 * @author YouWang·Peng
 * 2023-7-27 14:03:52
 */
@DBBasePO(TableName = "fpc_route_step_qualification", CheckName = {"Code", "RouteStepID,QualificationID"},
        CodeAuto = true, CodePrefix = "RSQ-", CodeNum = 4, Schemas = DBSchemas.PDM)
public class FPCRouteStepQualification extends BasePO implements Serializable {
    /**
     * 序列号
     */
    private static final long serialVersionUID = 1L;

    @DBCondition
    @DBField
    public int RouteStepID = 0;//工步ID
    @DBJoin(name = "Code", tableName = "fpc_route_step", tableAsName = "routestep1", Schemas = DBSchemas.PDM,
            MainTableField = "RouteStepID")
    public String RouteStepCode = "";//工步编码
    @DBJoin(name = "Name", tableName = "fpc_route_step", tableAsName = "routestep1", Schemas = DBSchemas.PDM,
            MainTableField = "RouteStepID")
    public String RouteStepName = "";//工步名称

    /**
     * 资质ID
     */
    @DBCondition
    @DBField
    public int QualificationID = 0;
    /**
     * 资质名称
     */
    @DBCondition(CompareType = DBCondition.DBCompareType.like)
    @DBJoin(name = "Name", tableName = "bms_qualification", tableAsName = "qualification1", Schemas = DBSchemas.Basic,
            MainTableField = "QualificationID")
    public String QualificationName = "";
    /**
     * 资质编码
     */
    @DBCondition(CompareType = DBCondition.DBCompareType.like)
    @DBJoin(name = "Code", tableName = "bms_qualification", tableAsName = "qualification1", Schemas = DBSchemas.Basic,
            MainTableField = "QualificationID")
    public String QualificationCode = "";

    /**
     * 所需人数
     */
    @DBField
    public int PersonNumber = 0;

    @JsonProperty("RouteStepID")
    public int getRouteStepID() {
        return RouteStepID;
    }

    public void setRouteStepID(int routeStepID) {
        RouteStepID = routeStepID;
    }

    @JsonProperty("RouteStepCode")
    public String getRouteStepCode() {
        return RouteStepCode;
    }

    public void setRouteStepCode(String routeStepCode) {
        RouteStepCode = routeStepCode;
    }

    @JsonProperty("RouteStepName")
    public String getRouteStepName() {
        return RouteStepName;
    }

    public void setRouteStepName(String routeStepName) {
        RouteStepName = routeStepName;
    }

    @JsonProperty("QualificationID")
    public int getQualificationID() {
        return QualificationID;
    }

    public void setQualificationID(int qualificationID) {
        QualificationID = qualificationID;
    }

    @JsonProperty("QualificationName")
    public String getQualificationName() {
        return QualificationName;
    }

    public void setQualificationName(String qualificationName) {
        QualificationName = qualificationName;
    }

    @JsonProperty("QualificationCode")
    public String getQualificationCode() {
        return QualificationCode;
    }

    public void setQualificationCode(String qualificationCode) {
        QualificationCode = qualificationCode;
    }

    @JsonProperty("PersonNumber")
    public int getPersonNumber() {
        return PersonNumber;
    }

    public void setPersonNumber(int personNumber) {
        PersonNumber = personNumber;
    }
}
